Fix various problem with temporarily unsetting background
authorAlexander Larsson <alexl@redhat.com>
Tue, 20 Jan 2009 20:59:04 +0000 (21:59 +0100)
committerAlexander Larsson <alex@localhost.localdomain>
Thu, 2 Apr 2009 08:15:20 +0000 (10:15 +0200)
commited9cd90b729011bad6e38842fb2f827e017bb1f8
tree00b2142c99e41cbf75a3dcfb46c4fe826772d134
parent3c5c7f4b4ddf1d7b6d0bf6dc442ba577f1f96019
Fix various problem with temporarily unsetting background

All the calls that unset private->parent failed if that was
not a native window (impl), instead we need to find the impl window
for the parent. Add some helper functions for this and use them.

For move/resize of child windows, we really need to recursively unset
on the parent, because moving the window could expose other native
children of the parent.

In do_shape_combine_region, only unset background if we're changing
the bounding shape (i.e. not the input shape)
gdk/x11/gdkgeometry-x11.c
gdk/x11/gdkwindow-x11.c
gdk/x11/gdkwindow-x11.h